﻿<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="ServiceDescription.aspx.vb" Inherits="TermWebApp.ServiceDescription" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <style type="text/css">
        .auto-style1
        {
            text-decoration: underline;
            font-size: large;
        }
        .auto-style2
        {
            font-size: large;
        }
        .auto-style3
        {
            font-size: medium;
        }
        .auto-style4
        {
            text-decoration: underline;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
        <h1>Web Service Documentation</h1>
        <p>
            The HotelService.asmx web service provides the following methods for use:</p>
        <p>
            i<strong><span class="auto-style1">nsertRoom</span><span class="auto-style2">(mhd As HotelDetail_t, hotelID As String, Amenities As Integer) As Boolean<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Adds a new Room to a given Hotel.</span><strong><br />
            - Input: </strong>Accepts Hotel Detail object (room reservation), HotelID, and Amenities.<br />
            - <strong>Output: </strong>Boolean value indicating whether was added successfuly (True) or not (False).</p>
        <p>
            i<strong><span class="auto-style1">nsertHotel</span><span class="auto-style2">(mHotel As Hotel_t) As Boolean<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Adds a new Hotel listing to the database.</span><strong><br />
            - Input: </strong>Accepts Hotel object.<br />
            - <strong>Output: </strong>Boolean value indicating whether added successfuly (True) or not (False).</p>
        <p>
            i<strong><span class="auto-style1">nsert</span><span class="auto-style2"><span class="auto-style4">Amenities</span>(mHotel As Hotel_t) As Boolean<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Adds Amenities listing into database for a given Hotel.</span><strong><br />
            - Input: </strong>Accepts Hotel object.<br />
            - <strong>Output: </strong>Boolean value indicating whether added successfuly (True) or not (False).</p>
        <p>
            <strong><span class="auto-style2"><span class="auto-style4">getHotel</span>( ) As DataSet<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Returns a DataSet containing all currently stored hotels.</span><strong><br />
            - Input: </strong>N/A<br />
            - <strong>Output: </strong>DataSet containing Hotel objects for all hotels in database.</p>
        <p>
            <strong><span class="auto-style2"><span class="auto-style4">getAmenities</span>(hotelID As Integer) As DataSet<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Returns the current amenities for a given hotel.</span><strong><br />
            - Input:</strong> Accepts HotelID for hotel in question.<br />
            - <strong>Output: </strong>DataSet containing Amenities objects for a given hotel in database.</p>
        <p>
            <strong><span class="auto-style2"><span class="auto-style4">getRooml</span>(hotelID As Integer) As DataSet<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Returns all of the room details for a given hotel.</span><strong><br />
            - Input:</strong> Accepts HotelID for hotel in question.<br />
            - <strong>Output: </strong>DataSet containing Room objects for a given hotel in database.</p>
        <p>
            <strong><span class="auto-style2"><span class="auto-style4">ReserveRoom</span>(thisRoom As TripDetail_t, thisCustomer As CustLib) As Boolean<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Makes a reservation for a given room and customer.</span><strong><br />
            - Input:</strong> Accepts TripDetail_t (room reservation) object and Customer object.
            <br />
            - <strong>Output: </strong>Boolean value indicating whether added successfuly (True) or not (False).</p>
        <p>
            <strong><span class="auto-style2"><span class="auto-style4">GetRoomAvailability</span>(thisRoom As TripDetail_t) As String<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Returns room availability string for a given room.</span><strong><br />
            - Input:</strong> Accepts TripDetail_t (room reservation) object.<br />
            - <strong>Output: </strong>String seperating dates of reservations, each beginning with &quot;!&quot; and ending with &quot;?&quot; to easily break them down.</p>
        <p>
            <strong><span class="auto-style2"><span class="auto-style4">GetNightlyPrice</span>(thisRoom As TripDetail_t) As Double<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Returns nightly price for a given room.</span><strong><br />
            - Input:</strong> Accepts TripDetail_t (room reservation) object.<br />
            - <strong>Output: </strong>Decimal value indicating the nightly price for a given room in United States Dollars.</p>
        <p>
            <span class="auto-style2"><strong><span class="auto-style4">GetCustomerTotalSales</span>(thisCustomer As CustLib) As Double</strong></span><strong><span class="auto-style2"><br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Returns total sales in USD for a given customer</span><strong><br />
            - Input:</strong> Accepts Customer object.<br />
            - <strong>Output: </strong>Decimal value indicating the total amount of money the customer has spent so far.</p>
        <p>
            <strong><span class="auto-style2"><span class="auto-style4">GetRoomsRemaining</span>(RoomID As Integer) As Integer<br />
            </span></strong><span class="auto-style3">- <strong>Purpose</strong>: Returns the number of rooms remaining for a given Room ID.</span><strong><br />
            - Input:</strong> Accepts RoomID as an integer value.<br />
            - <strong>Output: </strong>Integer value indicating the number of this given room that are presently available.</p>
        <p>
            &nbsp;</p>
        <p>
            The following classes and their associated properties are referenced from this web service:</p>
        <p class="auto-style2">
            <strong><span class="auto-style4">CustLib (Customer) Class Properties</span><br />
            </strong><span class="auto-style3">- LoginID (String): used for authenticating with system<br />
            - FirstName (String)<br />
            - LastName (String)<br />
            - Address (String)<br />
            - City (String)<br />
            - State (String)<br />
            - ZipCode (String)<br />
            - Email (String)<br />
            - Password (String)<br />
            - TotalDollarSales (Decimal): total $ USD spent by customer<br />
            - Cart (String): contains current shopping cart information</span></p>
        <p class="auto-style2">
            <strong><span class="auto-style4">Hotel_t (Hotel) Class Properties</span><br />
            </strong><span class="auto-style3">- HotelID (Integer)<br />
            - HotelName (String)<br />
            - City (String)<br />
            - State (String)<br />
            - ZipCode (String)<br />
            - Stars (String): number of &quot;stars&quot; - review rating from 1-5<br />
            - RoomAvailability (Double): indicates when room will be occupied</span></p>
        <p class="auto-style2">
            <strong><span class="auto-style4">Hotel_Detail_t (Room Reservation) Class Properties</span><br />
            </strong><span class="auto-style3">- RoomID (Integer)<br />
            - HotelID (Integer): ID of hotel that contains the room<br />
            - RoomType (String): describes type of room<br />
            - BedSize (String): size of bed from Twin to Emperor size<br />
            - NumberOfPeople (Integer): number of people staying in this particular room reservation<br />
            - NightlyPrice (Decimal): cost in $ USD for each night&#39;s reservation<br />
            - NumberRoom (Integer): number of room available</span></p>
        <p class="auto-style2">
            <strong><span class="auto-style4">TripDetail_t (Trip Reservation) Class Properties</span><br />
            </strong><span class="auto-style3">- TripItemID (Integer)<br />
            - TripID (Integer): ID of main trip associated with this particular reservation<br />
            - LogonID (String): username of person that submitted this trip information<br />
            - RoomID (Integer): ID of room being reserved<br />
            - RoomType (String): text description of type of room<br />
            - StartDate (Date): when reservation begins<br />
            - EndDate (Date): when reservation ends</span></p>
    
    </div>
    </form>
</body>
</html>
